[INFO] fetching crate konst_macro_rules 0.2.19...
[INFO] fixing konst_macro_rules-0.2.19 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate konst_macro_rules 0.2.19 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate konst_macro_rules 0.2.19
[INFO] finished tweaking crates.io crate konst_macro_rules 0.2.19
[INFO] tweaked toml for crates.io crate konst_macro_rules 0.2.19 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate konst_macro_rules 0.2.19 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19
[INFO] running `Command { std: "docker" "start" "9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2018 edition to 2021
[INFO] [stderr]     Checking konst_macro_rules v0.2.19 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2018 edition to 2021
[INFO] [stderr] error: errors present after applying fixes to crate `konst_macro_rules`
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/combinator_methods.rs:442:20
[INFO] [stdout]     |
[INFO] [stdout] 442 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: `--force-warn rust-2021-incompatible-or-patterns` implied by `--force-warn rust-2021-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]  --> src/utils.rs
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/combinator_methods.rs:453:20
[INFO] [stdout]     |
[INFO] [stdout] 453 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   = cause: error: attempted to repeat an expression containing no syntax variables matched as repeating at this depth
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/combinator_methods.rs:489:10
[INFO] [stdout]     |
[INFO] [stdout] 489 |         |$elem:pat| $v:expr
[INFO] [stdout]     |          ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              --> src/utils.rs:51:19
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:161:30
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ($fixed:tt $item:ident, |$elem:pat| $value:expr) => {
[INFO] [stdout]     |                              ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:172:44
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            51 |                 |$($bbb:pat_param),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:190:44
[INFO] [stdout]     |
[INFO] [stdout] 190 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |                   ^^---^^^^^^^^^^^
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:208:57
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ($fixed:tt ($i:ident $position:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                         ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |                     |
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:228:43
[INFO] [stdout]     |
[INFO] [stdout] 228 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |                     expected a repeatable metavariable: `$pat_var`
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:245:43
[INFO] [stdout]     |
[INFO] [stdout] 245 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:263:61
[INFO] [stdout]     |
[INFO] [stdout] 263 |     ($fixed:tt ($accum:ident) $item:ident, |$accum_pat:pat, $elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                             ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/option_macros_.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error: aborting due to 1 previous error
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/option_macros_.rs:90:18
[INFO] [stdout]    |
[INFO] [stdout] 90 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/option_macros_.rs:138:16
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($e:expr, |$param:pat| $v:expr $(,)?) => {
[INFO] [stdout]     |                ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/result_macros_.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/result_macros_.rs:42:18
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/result_macros_.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/result_macros_.rs:100:18
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/result_macros_.rs:119:18
[INFO] [stdout]     |
[INFO] [stdout] 119 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/result_macros_.rs:138:18
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:51:20
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$aaa:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:60:21
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:51:20
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$bbb:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:60:21
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: errors present after applying fixes to crate `konst_macro_rules`
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/combinator_methods.rs:442:20
[INFO] [stdout]     |
[INFO] [stdout] 442 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: `--force-warn rust-2021-incompatible-or-patterns` implied by `--force-warn rust-2021-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]  --> src/utils.rs
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/combinator_methods.rs:453:20
[INFO] [stdout]     |
[INFO] [stdout] 453 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   = cause: error: attempted to repeat an expression containing no syntax variables matched as repeating at this depth
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/combinator_methods.rs:489:10
[INFO] [stdout]     |
[INFO] [stdout] 489 |         |$elem:pat| $v:expr
[INFO] [stdout]     |          ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]              --> src/utils.rs:51:19
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:161:30
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ($fixed:tt $item:ident, |$elem:pat| $value:expr) => {
[INFO] [stdout]     |                              ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:172:44
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            51 |                 |$($bbb:pat_param),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:190:44
[INFO] [stdout]     |
[INFO] [stdout] 190 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |                   ^^---^^^^^^^^^^^
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:208:57
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ($fixed:tt ($i:ident $position:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                         ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |                     |
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:228:43
[INFO] [stdout]     |
[INFO] [stdout] 228 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               |                     expected a repeatable metavariable: `$pat_var`
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:245:43
[INFO] [stdout]     |
[INFO] [stdout] 245 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:263:61
[INFO] [stdout]     |
[INFO] [stdout] 263 |     ($fixed:tt ($accum:ident) $item:ident, |$accum_pat:pat, $elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                             ^^^^^^^^^ help: use pat_param to preserve semantics: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/option_macros_.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error: aborting due to 1 previous error
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/option_macros_.rs:90:18
[INFO] [stdout]    |
[INFO] [stdout] 90 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/option_macros_.rs:138:16
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($e:expr, |$param:pat| $v:expr $(,)?) => {
[INFO] [stdout]     |                ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/result_macros_.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/result_macros_.rs:42:18
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.69s
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]   --> src/result_macros_.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: konst_macro_rules v0.2.19 (/opt/rustwide/workdir) updating edition from 2018 to 2021
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/result_macros_.rs:100:18
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/result_macros_.rs:119:18
[INFO] [stdout]     |
[INFO] [stdout] 119 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/result_macros_.rs:138:18
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ^^^^^^^^^^ help: use pat_param to preserve semantics: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:51:20
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$aaa:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:60:21
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:51:20
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$bbb:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
[INFO] [stdout]    --> src/utils.rs:60:21
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: use pat_param to preserve semantics: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/or-patterns-macro-rules.html>
[INFO] [stdout]     = note: this warning originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking konst_macro_rules v0.2.19 (/opt/rustwide/workdir)
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/combinator_methods.rs:442:29
[INFO] [stdout]     |
[INFO] [stdout] 442 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/combinator_methods.rs:453:29
[INFO] [stdout]     |
[INFO] [stdout] 453 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/combinator_methods.rs:489:19
[INFO] [stdout]     |
[INFO] [stdout] 489 |         |$elem:pat| $v:expr
[INFO] [stdout]     |          ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:161:39
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ($fixed:tt $item:ident, |$elem:pat| $value:expr) => {
[INFO] [stdout]     |                              ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:172:53
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:190:53
[INFO] [stdout]     |
[INFO] [stdout] 190 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:208:66
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ($fixed:tt ($i:ident $position:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                         ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:228:52
[INFO] [stdout]     |
[INFO] [stdout] 228 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:245:52
[INFO] [stdout]     |
[INFO] [stdout] 245 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:263:70
[INFO] [stdout]     |
[INFO] [stdout] 263 |     ($fixed:tt ($accum:ident) $item:ident, |$accum_pat:pat, $elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                             ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/option_macros_.rs:71:28
[INFO] [stdout]    |
[INFO] [stdout] 71 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/option_macros_.rs:90:28
[INFO] [stdout]    |
[INFO] [stdout] 90 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/option_macros_.rs:138:26
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($e:expr, |$param:pat| $v:expr $(,)?) => {
[INFO] [stdout]     |                ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                |
[INFO] [stdout]     |                help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/result_macros_.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/result_macros_.rs:42:28
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/result_macros_.rs:81:28
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/result_macros_.rs:100:28
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/result_macros_.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/result_macros_.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:44:44
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$aaa:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:51:44
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    --------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$aaa:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:60:44
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:44:44
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$bbb:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:51:44
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    --------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$bbb:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:60:44
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/combinator_methods.rs:442:29
[INFO] [stdout]     |
[INFO] [stdout] 442 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/combinator_methods.rs:453:29
[INFO] [stdout]     |
[INFO] [stdout] 453 |     ($item:ident, |$elem:pat| $v:expr) => {{
[INFO] [stdout]     |                    ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/combinator_methods.rs:489:19
[INFO] [stdout]     |
[INFO] [stdout] 489 |         |$elem:pat| $v:expr
[INFO] [stdout]     |          ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:161:39
[INFO] [stdout]     |
[INFO] [stdout] 161 |     ($fixed:tt $item:ident, |$elem:pat| $value:expr) => {
[INFO] [stdout]     |                              ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                              |
[INFO] [stdout]     |                              help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:172:53
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:190:53
[INFO] [stdout]     |
[INFO] [stdout] 190 |     ($fixed:tt ($cond:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                            ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:208:66
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ($fixed:tt ($i:ident $position:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                         ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                                         |
[INFO] [stdout]     |                                                         help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:228:52
[INFO] [stdout]     |
[INFO] [stdout] 228 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:245:52
[INFO] [stdout]     |
[INFO] [stdout] 245 |     ($fixed:tt ($ret:ident) $item:ident, |$elem:pat| $v:expr) => {
[INFO] [stdout]     |                                           ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$elem:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/iter/iter_eval_macro.rs:263:70
[INFO] [stdout]     |
[INFO] [stdout] 263 |     ($fixed:tt ($accum:ident) $item:ident, |$accum_pat:pat, $elem:pat| $v:expr) => {
[INFO] [stdout]     |                                                             ---------^ not allowed after `pat` fragments
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             help: try a `pat_param` fragment specifier instead: `$elem:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/option_macros_.rs:71:28
[INFO] [stdout]    |
[INFO] [stdout] 71 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/option_macros_.rs:90:28
[INFO] [stdout]    |
[INFO] [stdout] 90 |     ($opt:expr, |$param:pat| $mapper:expr $(,)? ) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/option_macros_.rs:138:26
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($e:expr, |$param:pat| $v:expr $(,)?) => {
[INFO] [stdout]     |                ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                |
[INFO] [stdout]     |                help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/result_macros_.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/result_macros_.rs:42:28
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]   --> src/result_macros_.rs:81:28
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]    |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]    |
[INFO] [stdout]    = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/result_macros_.rs:100:28
[INFO] [stdout]     |
[INFO] [stdout] 100 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/result_macros_.rs:119:28
[INFO] [stdout]     |
[INFO] [stdout] 119 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$param:pat` is followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/result_macros_.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |     ($res:expr, |$param:pat| $expr:expr $(,)?) => {
[INFO] [stdout]     |                  ----------^ not allowed after `pat` fragments
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: try a `pat_param` fragment specifier instead: `$param:pat_param`
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:44:44
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$aaa:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:51:44
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    --------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$aaa:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:60:44
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 104 | make_parse_closure_macro! { $ __parse_closure_1 1 (aaa) }
[INFO] [stdout]     | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:44:44
[INFO] [stdout]     |
[INFO] [stdout]  44 |                 |$_($pat_var_:pat),* $_(,)?|  $_(,)?
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$bbb:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:51:44
[INFO] [stdout]     |
[INFO] [stdout]  51 |                 |$($_$pat_var:pat),* $_(,)?| $v:expr $_(,)*
[INFO] [stdout]     |                    --------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: try a `pat_param` fragment specifier instead: `$bbb:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `$pat_var_:pat` may be followed by `|`, which is not allowed for `pat` fragments
[INFO] [stdout]    --> src/utils.rs:60:44
[INFO] [stdout]     |
[INFO] [stdout]  60 |                 |$_($pat_var_:pat),* $_(,)?| $v:expr,
[INFO] [stdout]     |                     -------------          ^ not allowed after `pat` fragments
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: try a `pat_param` fragment specifier instead: `$pat_var_:pat_param`
[INFO] [stdout] ...
[INFO] [stdout] 105 | make_parse_closure_macro! { $ __parse_closure_2 2 (aaa bbb) }
[INFO] [stdout]     | ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: allowed there are: `=>`, `,`, `=`, `if`, `if let` or `in`
[INFO] [stdout]     = note: this error originates in the macro `make_parse_closure_macro` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/utils.rs:25:20
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const fn panic(msg: &str) -> ! {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `konst_macro_rules` (lib test) due to 25 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/utils.rs:25:20
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const fn panic(msg: &str) -> ! {
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `konst_macro_rules` (lib) due to 25 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19", kill_on_drop: false }`
[INFO] [stdout] 9040c8d63e602adcd672c3044c93950ca3bd20f6f9637fb320cfda85ad55bf19
